package dao

import (
	"time"
)

// 这是 LiAdminUser 的全局公开dao对象
var LiAdminUserDao = liAdminUserDao{}

// 这是 li_admin_user表 的实体类
type LiAdminUser struct {
	Id           int       `json:"id" form:"id" v:"id"`                                             // ID
	CreateBy     string    `json:"create_by" form:"create_by" v:"create_by"`                        // 创建者
	CreateTime   time.Time `json:"create_time" form:"create_time" v:"create_time"`                  // 创建时间
	DeleteFlag   bool      `json:"delete_flag" form:"delete_flag" v:"delete_flag" gm:"delete_flag"` // 删除标志 true/false 删除/未删除
	UpdateBy     string    `json:"update_by" form:"update_by" v:"update_by"`                        // 更新者
	UpdateTime   time.Time `json:"update_time" form:"update_time" v:"update_time"`                  // 更新时间
	Avatar       string    `json:"avatar" form:"avatar" v:"avatar"`                                 // 用户头像
	DepartmentId string    `json:"department_id" form:"department_id" v:"department_id"`            // 所属部门ID
	Description  string    `json:"description" form:"description" v:"description"`                  // 备注
	Email        string    `json:"email" form:"email" v:"email"`                                    // 邮件
	IsSuper      bool      `json:"is_super" form:"is_super" v:"is_super"`                           // 是否是超级管理员 超级管理员/普通管理员
	Mobile       string    `json:"mobile" form:"mobile" v:"mobile"`                                 // 手机
	NickName     string    `json:"nick_name" form:"nick_name" v:"nick_name"`                        // 昵称
	Password     string    `json:"password" form:"password" v:"password"`                           // 密码
	Sex          string    `json:"sex" form:"sex" v:"sex"`
	Status       bool      `json:"status" form:"status" v:"status"`       // 状态 默认true正常 false禁用
	Username     string    `json:"username" form:"username" v:"username"` // 用户名
	RoleIds      string    `json:"role_ids" form:"role_ids" v:"role_ids"` // 角色ID集合

}

// 注意:这是 LiAdminUser 的私有dao对象
type liAdminUserDao struct {
	Insert func(arg LiAdminUser) int         //插入一条记录
	Update func(arg LiAdminUser) int         //更新一条记录
	Delete func(arg LiAdminUser) int         //删除一条记录
	Select func(arg LiAdminUser) LiAdminUser //获取一条记录
}
